﻿using System;
using System.Collections.Generic;
using System.Data;
using System.Threading;
using System.Windows.Forms;
using WinForm;

namespace docmgr.WinForm
{
    static class Program
    {
       
        public static string userName = "";
        public static string passWord = "";
        public static string _passWord = "";//就这样吧，爱咋咋地，随便搞。
        static Mutex mutex = new Mutex(true, "{LO98385F-E6B4-4DB3-BE52-C1E5BA44ECBE}");

        /// <summary>
        /// 应用程序的主入口点。
        /// </summary>
        [STAThread]
        static void Main()
        {

            doinit();

            if (!mutex.WaitOne(TimeSpan.Zero, true))
            {
                //MessageBox.Show("在同一时间只能运行一个软件!");
                return;
            }
            Login loginForm = null;
            try
            {
                loginForm = new Login();
                loginForm.ShowDialog();
                _MainForm mainForm = new _MainForm();

                if(loginForm.IsLogin==1)
                {
                    loginForm.Dispose();
                    Application.EnableVisualStyles();
                    //Application.SetCompatibleTextRenderingDefault(false);
                    Application.Run(mainForm);

                    
                }
                else
                {
                    Application.Exit();
                }
            }
            catch (System.Exception e)
            {
                MessageBox.Show(e.StackTrace);
                Console.WriteLine(e.ToString());
            }
            finally
            {
                if (loginForm != null)
                {
                    loginForm.Close();
                    loginForm.Dispose();
                }
            }
        }

        private static void doinit()
        {
            Common.DocType.Add("收文");
            Common.DocType.Add("发文");
            Common.DocType.Add("呈批件");
            Common.DocType.Add("函");
            Common.DocType.Add("白头文件");
            Common.DocType.Add("合同");//只能自己记了。想不起来就算了。

            Common.SercretLevel.Add("秘密");
            Common.SercretLevel.Add("机密");
            Common.SercretLevel.Add("绝密");


            Common.DocStatus.Add("在库");
            Common.DocStatus.Add("销毁");
            Common.DocStatus.Add("传阅");



            if (SQLHelper.connString == null || SQLHelper.connString == "")
            {
                SQLHelper.getConnectionString();
            }
            Common.ReadOffset();//读取打印偏移量

            
            String sqlStr = "select ID,Name from Directory where Type='DocClass'";

            Common.DocClassDT = SQLHelper.ExecuteDataSet(SQLHelper.connString, sqlStr).Tables[0];

            //一系列的字典初始化

        }
    }
}
